package cn.lili.modules.promotion.entity.dos;

import cn.lili.mybatis.model.BaseStandardEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

@EqualsAndHashCode(callSuper = true)
@Data
@TableName("li_return_activity_user")
@ApiModel(value = "我的全返卷")
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ReturnActivityUser extends BaseStandardEntity {

    @ApiModelProperty(name = "名称", notes = "")
    private String name;

    @ApiModelProperty(value = "面额")
    private Double price;

    @ApiModelProperty(name = "有效开始时间", notes = "")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date beginTime;

    @ApiModelProperty(name = "有效结束时间", notes = "")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    @ApiModelProperty(value = "生效状态（0未生效，1已生效）")
    private String status;

    @ApiModelProperty(name = "使用状态（0未使用，1已使用，2已过期）", notes = "")
    private String useStatus;

    @ApiModelProperty(value = "用户ID")
    private String userId;

    @ApiModelProperty(value = "返卷订单号")
    private String orderSn;

    @ApiModelProperty(value = "返卷子订单号")
    private String orderItemSn;

    @ApiModelProperty(name = "有效时间CODE", notes = "")
    private String effectiveTimeCode;

    @ApiModelProperty(name = "不可用原因")
    @TableField(exist = false)
    private String reason;

    @ApiModelProperty(name = "全返券来源")
    private String source;
}
